package com.killer_jin.core.common.enums;

import org.junit.Test;

import java.util.Arrays;

// 一个简单的枚举类实例
public enum AuthStatusEnum {
    // TEST实例后面的{…}就是属于TEST的实例方法，可以通过覆盖原本的方法，实现属于自己的定制。实例后面的{…}就是属于TEST的
    // 实例方法，可以通过覆盖原本的方法，实现属于自己的定制。
    AUTHED(1, "已授权"),
    UNAUTH(2, "未授权"),
    TEST(3, "测试"){
        public String getByCode() {
            return "I will not tell you";
        }
    };

    private int code;

    private String des;

    AuthStatusEnum(int code, String des) {
        this.code = code;
        this.des = des;
    }

    public int getCode() {
        return code;
    }

    public void setCode(int code) {
        this.code = code;
    }

    public String getDes() {
        return des;
    }

    public void setDes(String des) {
        this.des = des;
    }



    public String getByCode() {
        return "I will not tell you";
    }

    /**
     * 根据code获得枚举对象
     * @param code
     * @return
     */
    public static AuthStatusEnum getByCode(int code) {
        for (AuthStatusEnum e : AuthStatusEnum.values()) {
            if (code == e.getCode()) {
                return e;
            }
        }
        return null;
    }
}

